package com.ht.api.db.request;

import com.ht.api.db.annotate.HtFunction;
import com.ht.api.db.bean.DataResult;
import com.ht.api.db.bean.SessionBean;

import cn.hutool.json.JSONObject;

/**
 * 请求处理接口
 * @author asq
 * @param <T>
 * @createTime 2025年4月16日 14:12:25
 */
@HtFunction
public interface IHandleRequest {
	/**
	 * 前置函数
	 * @param me 登陆人对象
	 * @param param 请求参数
	 * @param result 接口数据存放容器
	 */
	public default void before(SessionBean me, JSONObject param, DataResult result) {
		
	}
	
	/**
	 * 请求处理
	 * @param me 登陆人对象
	 * @param param 请求参数
	 * @param result 接口数据存放容器
	 * @return
	 */
	public default void execute(SessionBean me, JSONObject param, DataResult result) {
		
	}
	
	/**
	 * 后置函数
	 * @param me 登陆人对象
	 * @param param 请求参数
	 * @param result 接口数据存放容器
	 */
	public default void after(SessionBean me, JSONObject param, DataResult result) {
		
	}
}
